﻿//Lưu mã khóa học để thực hiện ajax
var maKhoaHoc;

var $dieuKhienThe;

//Nếu mà khoaHoc_ThanhVien == null => ko cần cập nhật thời điểm
var capNhatThoiDiem; //bool

$(function () {
    $dieuKhienThe = $('#dieu-khien-the');

    //Lấy hash của trang để hiển thị view
    layTrang(window.location.hash.substring(1));

    //Khởi tạo trang
    khoiTao();
})

//Khởi tạo trang
function khoiTao() {
    //Hiển thị menu
    hienThiMenu('menu-khoahoc-' + maKhoaHoc);

    $dieuKhienThe.find('a').on('click', function () {
        layTrang(this.getAttribute('href').substring(1));
    })

    //Khởi tạo nút xin tham gia nhóm 
    $('#chuc-nang .dang-ky-khoa-hoc, #chuc-nang .huy-dang-ky-khoa-hoc').on('click', function () {
        var $obj = $(this);
        
        //Kiểm tra xem đăng ký hay hủy
        if ($obj.hasClass('dang-ky-khoa-hoc')) {
            //Đăng ký
            _ajax(
                    '/KhoaHoc_ThanhVien/XuLyDangKyKhoaHoc/' + maKhoaHoc,
                    null,
                    'post',
                    'text',
                    function (data) {
                        if (data == 'OK') {
                            $obj.removeClass('dang-ky-khoa-hoc').addClass('huy-dang-ky-khoa-hoc');
                        }
                        else {
                            thongBaoLoi(data);
                        }
                    },
                    thongBaoLoi,
                    '',
                    'Nhóm - Đăng ký nhóm'
                );
        }
        else {
            //Hủy đăng ký
            _ajax(
                    '/KhoaHoc_ThanhVien/XuLyHuyDangKyKhoaHoc/' + maKhoaHoc,
                    null,
                    'post',
                    'text',
                    function (data) {
                        if (data == 'OK') {
                            $obj.removeClass('huy-dang-ky-khoa-hoc').addClass('dang-ky-khoa-hoc');
                        }
                        else {
                            thongBaoLoi(data);
                        }
                    },
                    thongBaoLoi,
                    '',
                    'Nhóm - Hủy đăng ký nhóm'
                );
        }
    })
}

function layTrang(hash) {
    if (hash == 'diendan') {
        layDienDan();
        $dieuKhienThe.attr('class', $dieuKhienThe.attr('class').replace(/hien-tai-\w*/, 'hien-tai-diendan'));
    }
    else if (hash == 'tailieu') {
        layTaiLieu();
        $dieuKhienThe.attr('class', $dieuKhienThe.attr('class').replace(/hien-tai-\w*/, 'hien-tai-tailieu'));
    }
    else if (hash == 'baitap') {
        layBaiTap();
        $dieuKhienThe.attr('class', $dieuKhienThe.attr('class').replace(/hien-tai-\w*/, 'hien-tai-baitap'));
    }
    else {
        layBaiGiang();
        $dieuKhienThe.attr('class', $dieuKhienThe.attr('class').replace(/hien-tai-\w*/, 'hien-tai-baigiang'));
    }
}



//Lấy view diễn đàn
function layDienDan() {
    _ajax(
        '/KhoaHoc/Nhom_DienDan',
        { ma: maKhoaHoc },
        'POST',
        'JSON',
        function (data) {
            if (data.trangThai == 'OK') {
                hienThi(data.ketQua);
                if (capNhatThoiDiem) {
                    _ajax(
                        '/KhoaHoc_ThanhVien/CapNhatThoiDiem',
                        { maKhoaHoc: maKhoaHoc, tenNhom: 'DienDan' },
                        'POST',
                        'text',
                        function () {
                            $dieuKhienThe.find('.dien-dan > i').remove();
                        },
                        thongBaoLoi,
                        '',
                        'Nhóm - Cập nhật thời điểm diễn đàn'
                    );
                }
            }
            else {
                thongBaoLoi(data.trangThai);
            }
        },
        thongBaoLoi,
        'dau-hieu-tai',
        'Nhóm - Lấy diễn đàn'
    );
}

//Lấy view tài liệu
function layTaiLieu() {
    _ajax(
        '/KhoaHoc/Nhom_TaiLieu',
        { ma: maKhoaHoc },
        'POST',
        'JSON',
        function (data) {
            if (data.trangThai == 'OK') {
                hienThi(data.ketQua);
                if (capNhatThoiDiem) {
                    _ajax(
                        '/KhoaHoc_ThanhVien/CapNhatThoiDiem',
                        { maKhoaHoc: maKhoaHoc, tenNhom: 'TaiLieu' },
                        'POST',
                        'text',
                        function () {
                            $dieuKhienThe.find('.tai-lieu > i').remove();
                        },
                        thongBaoLoi,
                        '',
                        'Nhóm - Cập nhật thời điểm tài liệu'
                    );
                }
            }
            else {
                thongBaoLoi(data.trangThai);
            }
        },
        thongBaoLoi,
        'dau-hieu-tai',
        'Nhóm - Lấy tài liệu'
    );
}

//Lấy view bài tập
function layBaiTap() {
    _ajax(
        '/KhoaHoc/Nhom_BaiTap',
        { ma: maKhoaHoc },
        'POST',
        'JSON',
        function (data) {
            if (data.trangThai == 'OK') {
                hienThi(data.ketQua);
                if (capNhatThoiDiem) {
                    _ajax(
                        '/KhoaHoc_ThanhVien/CapNhatThoiDiem',
                        { maKhoaHoc: maKhoaHoc, tenNhom: 'BaiTap' },
                        'POST',
                        'text',
                        function () {
                            $dieuKhienThe.find('.bai-tap > i').remove();
                        },
                        thongBaoLoi,
                        '',
                        'Nhóm - Cập nhật thời điểm bài tập'
                    );
                }
            }
            else {
                thongBaoLoi(data.trangThai);
            }
        },
        thongBaoLoi,
        'dau-hieu-tai',
        'Nhóm - Lấy bài tập'
    );
}

//Lấy view bài giảng
function layBaiGiang() {
    _ajax(
        '/KhoaHoc/Nhom_BaiGiang',
        { ma: maKhoaHoc },
        'POST',
        'JSON',
        function (data) {
            if (data.trangThai == 'OK') {
                hienThi(data.ketQua);
                if (capNhatThoiDiem) {
                    _ajax(
                        '/KhoaHoc_ThanhVien/CapNhatThoiDiem',
                        { maKhoaHoc: maKhoaHoc, tenNhom: 'BaiGiang' },
                        'POST',
                        'text',
                        function () {
                            $dieuKhienThe.find('.bai-giang > i').remove();
                        },
                        thongBaoLoi,
                        '',
                        'Nhóm - Cập nhật thời điểm bài giảng'
                    );
                }
            }
            else {
                thongBaoLoi(data.trangThai);                
            }
        },
        thongBaoLoi,
        'dau-hieu-tai',
        'Nhóm - Lấy bài giảng'
    );
}

//Hiển thị view
function hienThi(html) {
    $('#hien-thi').html(html);
}